﻿using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class D05_Vector3_6 : MonoBehaviour
{
    //玩家的攻击范围是   半径5米内,前方120度扇形范围

    //B向量表示玩家的前方
    public Transform player, monster;

    private void Update()
    {
        //按空格键,检测敌人是否在攻击范围内
        if (Input.GetKeyDown(KeyCode.Space))
        { //得到玩家到敌人的向量
            Vector3 vec = monster.position - player.position;

            //先判断距离   不用距离判断,而是用距离的平方判断
            if (vec.sqrMagnitude > 25)
            {
                return;
            }
            Debug.Log(Vector3.Angle(vec, player.forward));
            //判断夹角
            if (Vector3.Dot(player.forward, vec.normalized) < 0.5f)
            {
                return;
            }

            //攻击
            Debug.Log("可以攻击");
        }
    }
}